心情日记 · 不见工大



  • 首发qtDream,转载请注明出处。

    二零一五年,六月十九日,我背着沉重的包袱,离开了工大。
    出了东门,我懦弱地求同行的星风:“我们打车吧”。
    他回头深情地看了一眼即将离开的工大,淡淡道:“好”。
    我逃也似地把行李装进出租车后备箱,一刻也不敢等,生怕一回头,就再也迈不开离开的脚步。
    耳机里放的是听了四年的《流川枫与苍井空》。

    这样的故事,每年都发生,在这城市之中。
    这样的故事,每年都结束,消失在风中。

    这一刻我觉得它真不是滋味,切到了下一首,是庞麦郎的《我的滑板鞋》。

    时间过得很快,夜幕就要降临,
    我想我必须要离开。

    我惶恐地摘下耳机,听得星风在说:“都要走了,还不给个好天气。”
    我看向窗外,那是熟悉的,株洲的,雾霾。

    到了落脚处,S师兄已经准备好了酒菜为我接风洗尘。
    “离开的感觉如何?”他问。
    “嗯?”我停住正欲夹花生米的筷子,低头看着手里的酒杯,道:“就好像这酒里的气泡,迫不及待。”
    “是么?”他饶有兴致地看了我一眼,尔后端视着自己的酒杯,又问:“那你觉得,工大和太阳,哪个更远呢?”
    我懂得他的意思了,我想起十二岁那年,独自一人背井离乡前往异地求学,离开时母亲的百般叨扰,又是生活,又是学习;我的满不在乎,心中只有对未知世界的憧憬。信誓旦旦地答应她我会照顾好自己,会好好学习,绝不惹事。
    然而第一次放假回家,再见到伊时,我竟然哭了,哭得莫名其妙,哭得撕心裂肺。但伊却并不问缘由,只是抱着我的头,笑道:“哈宝”。
    那是我第一次认识到“远”,虽近在咫尺,却恍隔天日。

    “我以为...”
    他望着不断浮出液面的气泡出了神,完全忽视了我的存在。良久,才缓缓开口道:“曾几何时,我也和你一样,一心只想快点去看看外面的世界,然而,然而等再也回不去的时候,我才意识到其中的残酷。”
    “那是什么呢?”我问。
    “不过是由不得你不开始,由不得你不结束。就如这杯中的气泡”说着他一口将酒喝完,“在不恰当的时候开始,却无法在合适的时候结束。”
    我感到一阵恍惚,仿佛听到庞麦郎在唱“时间过得很快,夜幕就要降临,我想我必须要离开。”

    必须要离开。
    我想。

    啊,多么痛的领悟。
    是啊,我们必须要离开生活了四年的学校,必须要离开那默默暗恋未曾表白的女孩,必须要离开这里每一把坐过的椅子,每一处躲过雨的屋檐,每一个可爱的人。
    被推着走,由不得我们不开始,由不得我们不结束,跟着生活流的无奈。

    我举起酒杯,手已在微微颤抖,艰难地做出一个“敬”的动作,然后将它一口饮尽,努力克制住想要打的嗝,嗫嚅地问他:“那在你看来,谁更远一些呢?”

    “举目见日,不见,工,大”。

    PS:本着丰富qtDream内容的想法,从自己写过的那些蹩脚文章里挑出了这篇还算能看的心情日记,还请看官们多多担待



  • @药师

    写得一手好文章。



  • @qyvlik 谢谢~



  • 满怀激情的人啊。。。



  • 哈.哪家工大😀



  • @gnibuoz 湖南的



  • 湖南工业大学?株洲?



  • @maidanm 是的呀



  • 你是哈工大还是合工大的啊?我是合工大的师弟。😂



  • 写的挺好的,,,,,



  • 由不得你不开始,由不得你不结束


Log in to reply
 

走马观花

最近的回复

  • C

    Qt for MCU需要商业授权的

    read more
  • Qt for MCUs

    搭建Qt for MCUs PC端开发环境。qt for mcus提供了一个完整的图形框架和工具包,包含了在MCUs上设计、开发和部署gui所需的一切。它允许您在裸机或实时操作系统上运行应用程序。

    先决条件

    开发主机环境支持仅限于Windows 10

    MSVC compiler v19.16 (Visual Studio 2017 15.9.9 or newer) x64

    CMake v3.13 or newer (you can install it using the Qt Online installer) x64

    使用Qt联机安装程序安装Qt for MCUs,该安装程序可通过Qt帐户下载

    安装Qt 5.14和Qt Creator 4.11 or higher

    安装链接

    › Qt: https://account.qt.io/downloads
    › CMake: https://cmake.org/download/
    › Python 2.7 32-bit: https://www.python.org/downloads/release/python-2716/
    › Arm GCC: https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnutoolchain/gnu-rm/downloads
    › J-Link Software Pack: https://www.segger.com/downloads/jlink/JLink_Windows.exe
    › J-Link OpenSDA Firmware: https://www.segger.com/downloads/jlink/OpenSDA_MIMXRT1050-EVKHyperflash
    › STM32CubeProgrammer: https://www.st.com/en/development-tools/stm32cubeprog.html
    › STM32 ST-LINK Utility: https://www.st.com/en/development-tools/stsw-link004.html​​​​​​​

    Qt Creator设置 启用Qt Creator插件 选择“帮助>关于插件”,然后从列表中选择“MCU支持(实验性)”插件,重新启动Qt Creator以应用更改
    替代文字 为MCU创建Qt工具包

    选择工具>选项>设备>MCU

    选择Qt for MCUs-Desktop 32bpp作为目标

    如果尚未设置,请提供Qt for MCUs安装目录的路径。

    单击Apply应用。

    替代文字

    替代文字
    替代文字

    注意:

    编译器要选X64,Qt版本要选64bit,CMake Tool选x64

    打开恒温器项目demo

    选择文件>打开文件或项目。。。

    打开CMakefiles.txt文件来自thermo文件夹的文件。

    选择Qt作为MCU-桌面32bpp套件。

    单击“配置项目”以完成。

    替代文字

    问题

    开发主机环境支持仅限于Windows 10

    C++编译失败,文本大字体.pixelSize.

    文本类型无法正确呈现需要复杂文本布局的unicode序列。对复杂文本使用StaticText

    read more
  • H

    hi 有问题请教你,方便加个联系方式吗

    read more
  • boost.asio是一个很棒的网络库,这回儿我也开始系统地学习起来了。想想当年接触boost,也有八年多了。这次开始接触boost,觉得既熟悉又陌生。熟悉的是小写字母+下划线的命名方式、晦涩的模板、很慢的编译速度以及较大的程序体积,陌生的是asio的各种概念:io服务、接收器、套接字等等:我之前对网络编程不是非常了解。

    于是根据我的理解,参考《Boost.Asio C++网络编程》实现了这样一个简单的客户端和服务端通信的例子,例子非常简单,还不完善,但是幸运的是,可以在本机上互通了。
    下面是客户端的代码:

    #include <iostream> #include <boost/asio.hpp> #include <boost/proto/detail/ignore_unused.hpp> using namespace std; using namespace boost::asio; using namespace boost::system; using namespace boost::proto::detail;// 提供ignore_unused方法 void writeHandler( const boost::system::error_code& ec, size_t bytesTransferred ) { if ( ec ) { cout << "Write data error, code: " << ec.value( ) << "transferred: " << bytesTransferred << endl; } else { cout << "OK! " << bytesTransferred << "bytes written. " << endl; } } int main(int argc, char *argv[]) { ignore_unused( argc ); ignore_unused( argv ); io_service service; ip::tcp::socket sock( service ); ip::tcp::endpoint ep( ip::address::from_string( "127.0.0.1" ), 6545 ); boost::system::error_code ec; sock.connect( ep, ec ); if ( ec ) { cout << "Connect error, code: " << ec.value( ) << ", We will exit." << endl; return ec.value( ); } else { char buf[1024] = "Hello world!"; sock.async_write_some( buffer( buf ), writeHandler ); sock.close( ); } return service.run( ); }

    下面是服务端的代码:

    #include <iostream> #include <boost/asio.hpp> #include <boost/proto/detail/ignore_unused.hpp> using namespace std; using namespace boost::asio; using namespace boost::system; using namespace boost::proto::detail;// 提供ignore_unused方法 void acceptHandle( const boost::system::error_code& code ) { cout << "Accepted." << endl; } int main(int argc, char *argv[]) { ignore_unused( argc ); ignore_unused( argv ); io_service service; ip::tcp::endpoint ep( ip::address::from_string( "127.0.0.1" ), 6545 ); boost::system::error_code ec; ip::tcp::socket sock( service ); ip::tcp::acceptor acceptor( service, ep ); acceptor.async_accept( sock, acceptHandle ); if ( ec ) { cout << "There is an error in server. code: " << ec.value( ) << endl; } return service.run( );// 阻塞运行 }

    运行结果是这样的:
    78448d7b-b3ae-42fc-9e2e-4dd2fbdac2c2-image.png

    我对boost.asio中几个概念的理解:

    io_service,这就是一个类似事件循环的东西,它为io设备提供服务,故名。不管是套接字、文件还是串口设备,都要使用它的服务。它的run()函数相当于启动了一个事件循环。一旦有消息了,即进行响应。这也是实现异步编程的重要基础。 socket,这个类则是套接字,可以处理TCP或者是UDP请求。有同步以及异步的处理方式,也有带异常以及不带异常的处理方式。 acceptor,接收器,仅仅是服务端使用。相当于其余框架中的listener,作接收用的。

    比较浅显,如果有不当之处,敬请指正。

    read more

关注我们

微博
QQ群