最近想把c#的一个工作中用到的软件用MFC 实现出来, 刚下手 要了解的东西挺多,不但要对c++的语法,大体看一遍.

还要看MFC 内一些窗体,之类的相关的定义,比如cpp ,.h 内的类的定义方式等等,大体上看了下c++的语法, 以前有一点点的基础,十年前毕业时当时是vc++ 6.0 .

c++ 中我想指针是绕不过去的难点.刚开始也不用掌握所有,只有在项目中边做边体悟,我想这才是正常的路子,

今天对线程,因为网上挺多有参数的使用,我想先把无参的方式简单呈现出来,然后再去扩展.

1:在生成的主窗体的.h 文件下声明一下; 定义在窗体类外.

//线程函数声明
DWORD WINAPI ThreadProc(LPVOID lpParam);

2:在内添加如下代码

    HANDLE hThead;    //用于存储线程句柄
DWORD dwThreadID;//用于存储线程的ID
// threadInfo Info[3]; //传递给线程处理函数的参数
HICON m_hIcon;

3:在cpp 内调用生成线程函数

hThead = CreateThread(NULL, , ThreadProc, NULL, , &dwThreadID);

4:在cpp内

DWORD WINAPI ThreadProc(LPVOID lpParam)
{
// threadInfo* Info = (threadInfo*)lpParam;
AfxMessageBox("ddd");
return ;
}

这四步 一个线程就生成完了, 里边可以编写你想要的东西

跟c#相比  多了在.h中的声明.  有了句柄之类的概念了.

CreateThread(NULL, 0, ThreadProc, NULL, 0, &dwThreadID); 中第四个参数 为null 就是无参数, 此参数是指针参数,是传给调用的函数中的.在文中第四部注释掉了 info 传过来的转换.

MFC 一个无参线程的CreateThread 使用的更多相关文章

  1. mybatis实体为什么要提供一个无参的构造函数

    提问:Mybatis查询结果映射到实体类的时候,实体类为什么必须有一个空的构造函数? 类中如果没有构造函数,隐藏是无参构造函数,方便实体类需要通过Mybatis进行动态反射生成.如果实体类中一旦声明构 ...

  2. 【c++】iostreeam中的类为何不可以直接定义一个无参对象呢

    缘起 #include <iostream> #include <fstream> #include <sstream> using namespace std; ...

  3. 为什么.Net要求序列化的类必须有一个无参数的构造函数

    刚才用xml序列化器,序列化一个类,结果报错说序列化的类必须带有一个无参的构造函数,好奇怪啊.为什么要有这么苛刻的条件,而且xml序列化还要求序列化的成员是public. 我以前一直觉得序列化器是一个 ...

  4. CLR via C#(11)-无参属性、有参数属性(索引器)

    一. 无参属性 1. 定义属性 无参属性就是我们最常见的属性方式,在赋值时可以加入一定的逻辑判断.属性的定义其实不复杂,先看个直观的例子: 说明: 属性要定义名称和类型,且类型不能是void. 属性是 ...

  5. 082 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 01 构造方法-无参构造方法

    082 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 01 构造方法-无参构造方法 本文知识点:构造方法-无参构造方法 说明:因为时间紧张, ...

  6. mybatis调用存储过程 无参、带有输入输出参数,输出游标类型的 存储

    存储过程在小公司用的不多,但是如果业务比较复杂或者性能要求比较苛刻的时候存储过程就派上用场了,ibatis的前期的一些版本貌似不支持存储过程因此我选择了mybatis来做实验. 1.无输入和输出参数的 ...

  7. 慕课网-Java入门第一季-7-3 Java 中无参带返回值方法的使用

    来源:http://www.imooc.com/code/1579 如果方法不包含参数,但有返回值,我们称为无参带返回值的方法. 例如:下面的代码,定义了一个方法名为 calSum ,无参数,但返回值 ...

  8. 慕课网-Java入门第一季-7-2 Java 中无参无返回值方法的使用

    来源:http://www.imooc.com/code/1578 如果方法不包含参数,且没有返回值,我们称为无参无返回值的方法. 方法的使用分两步: 第一步,定义方法 例如:下面代码定义了一个方法名 ...

  9. Java 第11章 类的无参方法

    类的无参方法 类的方法由哪几部分组成? 方法的定义: 1.访问权限修饰符 2.方法返回的数据类型 3.方法的名称 4.方法的主体 成员变量和局部变量的区别有那些? ~ 作用域不同 - 成员变量的作用域 ...

随机推荐

  1. JAVAWEB 一一 Spirng(AOP面向切面)

    applicationContext.xml <?xml version="1.0" encoding="UTF-8"?> <!-- < ...

  2. 解决ngui挡住粒子的问题

    using UnityEngine; using System.Collections; [ExecuteInEditMode] public class ControlParticle : Mono ...

  3. WinForm textbox 全选

    原地址:忘了 textBox1.KeyPress += anyTextBox_KeyPress; private void anyTextBox_KeyPress(object sender, Sys ...

  4. Pandas数据存取

    pd.read_excel('foo.xlsx', 'Sheet1', index_col=None, na_values=['NA']) Pandas数据存取 Pandas可以存取多种介质类型数据, ...

  5. 初始C语言中的指针(翁凯男神MOOC)

      运算符  & ● scanf("%d",&i); ●获得变量的地址,它的操作数必须是变量 ● int i; printf("%x",& ...

  6. linux centos 访问根目录 not accessable

    chmod 777 root 即可 或  chmod a+x root https://blog.csdn.net/CSDN_GYG/article/details/73276310

  7. DNS域名解析中A、AAAA、CNAME、MX、NS、TXT、SRV、SOA、PTR各项记录的作用

    名注册完成后首先需要做域名解析,域名解析就是把域名指向网站所在服务器的IP,让人们通过注册的域名可以访问到网站.IP地址是网络上标识服务器的数字地址,为了方便记忆,使用域名来代替IP地址.域名解析就是 ...

  8. linux系统上项目部署

    步骤:(特别注意:虚拟机安装的一般是32位的操作系统,jdk也必须使用32位的)查看虚拟机版本:sudo uname --m i686 //表示是32位 x86_64 // 表示是64位 查看是否已经 ...

  9. Android Studio: Application Installation Failed

    [Android Studio: Application Installation Failed] 参考:http://stackoverflow.com/questions/32718044/and ...

  10. The CHAR and VARCHAR Types

    [The CHAR and VARCHAR Types] The CHAR and VARCHAR types are declared with a length that indicates th ...