小编Bat*_*ted的帖子

#pragma pack效果

我想知道是否有人可以向我解释#pragma pack预处理器语句的作用,更重要的是,为什么人们会想要使用它.

我查看了MSDN页面,它提供了一些见解,但我希望能从有经验的人那里听到更多.我以前在代码中看过它,虽然我似乎无法找到它的位置.

c c-preprocessor pragma-pack

212
推荐指数
4
解决办法
19万
查看次数

gcc的__attribute __((打包))/ #pragma包不安全吗?

在C中,编译器将按照声明它们的顺序布置结构的成员,在成员之间插入可能的填充字节,或者在最后一个成员之后插入,以确保每个成员正确对齐.

gcc提供了一种语言扩展,__attribute__((packed))它告诉编译器不要插入填充,允许结构成员不对齐.例如,如果系统通常要求所有int对象都具有4字节对齐,则__attribute__((packed))可能导致int在奇数偏移处分配struct成员.

引用gcc文档:

`packed'属性指定变量或结构字段应该具有尽可能小的对齐 - 变量的一个字节和字段的一个位,除非您使用`aligned'属性指定更大的值.

显然,使用此扩展可以导致更小的数据要求但代码更慢,因为编译器必须(在某些平台上)生成代码,以便一次一个字节地访问未对齐的成员.

但有任何不安全的情况吗?编译器是否始终生成正确(但速度较慢)的代码来访问打包结构的未对齐成员?在所有情况下都可以这样做吗?

c gcc pragma-pack

149
推荐指数
4
解决办法
11万
查看次数

webpack命令无法正常工作

我是Node Js和Webpack的新手.我试图用模块加载器启动一个项目.

首先,我安装了nodeJs和NPM并创建了一个名为的新目录tutorial.我使用命令提示符进入此目录,然后运行以下命令npm init,然后npm使用以下命令安装webpack :

npm install -S webpack
Run Code Online (Sandbox Code Playgroud)

第一个命令将webpack本地安装到'node-modules'目录下的项目中,我可以通过执行以下操作来运行我的项目:

nodejs node-modules/webpack/bin/webpack.js
Run Code Online (Sandbox Code Playgroud)

这个问题是我必须将我的webpack.config.js文件放在我想放在项目根目录中的这个目录中.

这个问题的一个解决方案是在我的机器上全局安装webpack,我使用下面的命令:

npm install -g webpack
Run Code Online (Sandbox Code Playgroud)

这安装了Webpack,现在我有一个Webpack命令.但是,此命令似乎不起作用或根本不做任何事情.当我尝试从我的项目的root directroy运行它时,它根本不做任何事情(见截图)

在此输入图像描述

请告诉我我做错了什么!!

ubuntu node.js npm webpack

63
推荐指数
4
解决办法
11万
查看次数

创建隐藏文件夹

有什么方法可以从c#中以编程方式创建(并且我猜访问)存储设备上的隐藏文件夹?

.net c# filesystems

43
推荐指数
3
解决办法
3万
查看次数

什么是更好的使用,__try/__除块或try/catch块?

我想知道哪种方法可以捕获我抛出的异常:是__try/__except块还是try/catch块?

我正在用C++编写,该程序只能在Windows上使用,因此可移植性不是问题.

谢谢!

c c++ performance exception try-catch

27
推荐指数
3
解决办法
2万
查看次数

AWS Cognito的SMS多重身份验证返回无效代码或身份验证状态

我正在尝试Cognito使用他们的Go 实现基于身份验证SDK.我已经能够使基本username/password身份验证工作,但当我添加2因素身份验证时,SMS我遇到了困难.

重现步骤 :

  1. 我使用用户名/密码和电子邮件验证创建用户
  2. 我验证了电子邮件地址
  3. 我设置了电话号码并申请了验证码
  4. 我验证了电话号码
  5. 我启用双因素身份验证(通过短信)
  6. 我尝试登录并接收SMS_MFA质询
  7. 我在手机上收到了代码并致电AdminRespondToAuthChallenge

问题,我收到了error:

CodeMismatchException: Invalid code or auth state for the user.
status code: 400, request id: 1513894e-8efa-11e8-a8f8-97e5e083c03b
Run Code Online (Sandbox Code Playgroud)

SMS验证码当然是正确的,因此它似乎必须与auth状态有关.

对Cognito的调用如下所示:

c.cip.SignUp(&cognitoidentityprovider.SignUpInput{
        ClientId: aws.String(c.clientID),
        Username: aws.String(username),
        Password: aws.String(password),
        UserAttributes: []*cognitoidentityprovider.AttributeType{
            {
                Name:  aws.String("email"),
                Value: aws.String(email),
            },
            {
                Name:  aws.String("name"),
                Value: aws.String(fullName),
            },
        },
    })

c.cip.ConfirmSignUp(&cognitoidentityprovider.ConfirmSignUpInput{
    ClientId:         aws.String(c.clientID),
    Username:         aws.String(username),
    ConfirmationCode: aws.String(code),
})


//Add the phone number
c.cip.AdminUpdateUserAttributes(&cognitoidentityprovider.AdminUpdateUserAttributesInput{
            UserPoolId: aws.String(c.userPoolID),
            Username:   aws.String(username),
            UserAttributes: …
Run Code Online (Sandbox Code Playgroud)

go aws-cognito

19
推荐指数
1
解决办法
712
查看次数

Angular材料导入mat-checkbox时出错

我在使用Angular Material时遇到了一些麻烦,我尝试了很多解决方案,但没有一个能够解决问题.这就是我想要做的:

我正在使用Angular Material with Reactive Forms来制作register表单,一切都很好,直到我添加了一个mat-checkbox组件.这是error我得到的:

错误错误:mat-form-field必须包含MatFormFieldControl.

这是我的代码:

HTML:

<mat-form-field>
   <mat-checkbox formControlName="check">
      Check me!
   </mat-checkbox>
</mat-form-field>
Run Code Online (Sandbox Code Playgroud)

零件 :

this.registerForm = this.formBuilder.group({
    name: ['', Validators.required ],
    email: ['', Validators.required],
    check: ['', Validators.required ]
});
Run Code Online (Sandbox Code Playgroud)

模块:

import { ReactiveFormsModule } from '@angular/forms';
import { RegisterFormComponent } from './register-form.component';
import { MatCheckboxModule } from '@angular/material';
import { MatInputModule } from '@angular/material/input';
import { MatFormFieldModule } from '@angular/material/form-field';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';

@NgModule({
 imports: [ …
Run Code Online (Sandbox Code Playgroud)

angular-material angular angular-reactive-forms

16
推荐指数
1
解决办法
5866
查看次数

如何删除某个字符后的所有内容?(记事本++)

我需要在某个字符后删除所有内容。例如在以下行中:

email:pass | text | text | text | text
Run Code Online (Sandbox Code Playgroud)

我将如何删除过去的所有内容"pass",结果是这样的:

email:pass
Run Code Online (Sandbox Code Playgroud)

先感谢您!

notepad++

16
推荐指数
2
解决办法
7万
查看次数

终端中的eslint无法找到模块'eslint-config-react-app'

我使用create-react-app制作一个反应应用程序.

linter在create-react-app中工作,但现在我想让它在我的sublimetext中工作.

  1. 已安装的eslint yarn global add eslint(eslint v4.1.1但也试过v3.19.0因为反应应用程序使用了那个)
  2. 运行eslint --init并配置它
  3. 转到项目目录并创建一个名为的文件 .eslintrc
  4. 内部文件:
{
"extends": "react-app"
}
Run Code Online (Sandbox Code Playgroud)
  1. 在项目目录中运行 eslint src/App.js
  2. 在终端中获取错误:

    引用自:/mnt/storage/Dev/newapp/.eslintrc错误:找不到模块'eslint-config-react-app'

    参考:/mnt/storage/Dev/newapp/.eslintrc在ModuleResolver.resolve(/home/user/.config/yarn/global/node_modules/eslint/lib/util/module-resolver.js:74:19)at在加载时解析(/home/user/.config/yarn/global/node_modules/eslint/lib/config/config-file.js:515:25)(/home/user/.config/yarn/global/node_modules/eslint /lib/config/config-file.js:584:26)在configExtends.reduceRight(/home/user/.config/yarn/global/node_modules/eslint/lib/config/config-file.js:421:36)在loadFromDisk(/home/user/.config)的applyExtends(/home/user/.config/yarn/global/node_modules/eslint/lib/config/config-file.js:405:28)的Array.reduceRight(native)处/yarn/global/node_modules/eslint/lib/config/config-file.js:556:22)at Object.load(/home/user/.config/yarn/global/node_modules/eslint/lib/config/config- file.js:592:20)在Config.getConfigHierarchy(/home/user/.config/yarn/global/)的Config.getLocalConfigHierarchy(/home/user/.config/yarn/global/node_modules/eslint/lib/config.js:228:44) node_modules/eslint/LIB/config.js:182:43)

我添加了yarn global add babel-eslint eslint-plugin-react eslint-plugin-import eslint-plugin-jsx-a11y eslint-plugin-flowtype.但我认为这不再是必要了!

sublimelinter eslint create-react-app yarnpkg

11
推荐指数
3
解决办法
6743
查看次数

/ usr/bin/ld:找不到-lGL(Ubuntu 14.04)

我正在尝试构建一个在QT Creator中创建的项目,不幸的是每次我尝试编译时都会出错.这是我的编译器输出:

23:02:20: Running steps for project WallpaperAppQt...
23:02:20: Configuration unchanged, skipping qmake step.
23:02:20: Starting: "/usr/bin/make" 
g++ -m64 -o WallpaperAppQt main.o mainwindow.o moc_mainwindow.o   -L/usr/X11R6/lib64 -lQt5Widgets -L/usr/lib/x86_64-linux-gnu -lQt5Gui -lQt5Core -lGL -lpthread 
/usr/bin/ld: cannot find -lGL
collect2: error: ld returned 1 exit status
make: *** [WallpaperAppQt] Error 1
23:02:20: The process "/usr/bin/make" exited with code 2.
Error while building/deploying project WallpaperAppQt (kit: Desktop)
When executing step 'Make'
23:02:20: Elapsed time: 00:00.
Run Code Online (Sandbox Code Playgroud)

c++ linux ubuntu qt gcc

9
推荐指数
2
解决办法
1万
查看次数