小编Luc*_*nik的帖子

Sublime Text 3中的C11和C++ 11问题

我升级我的Sublime Text 3 for C/C++,但我必须用C11和C++ 11这样的现代版本编写代码.

当我尝试像这样的C11代码:

#include <stdio.h>

int main( int argc, char ** argv )
{
    puts("C99 Version:");

    for( int i = 0; argv[i]; i++ ) {
        printf("%d: %s\n", i, argv[i]);
    }
    getchar();
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

Sublime给出错误:

C:\Users\pc\Desktop\CPPproject\c99.c:7:2: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
  for( int i = 0; argv[i]; i++ ) {
  ^
C:\Users\pc\Desktop\CPPproject\c99.c:7:2: note: use option -std=c99, -std=gnu99, -std=c11 or -std=gnu11 to compile your code
Run Code Online (Sandbox Code Playgroud)

你能解释一下如何使用-std = c99,-std = …

c c++ c++11 sublimetext2 sublimetext3

8
推荐指数
1
解决办法
9940
查看次数

Eclipse找不到我的C/C++ MinGW工具链

我有个问题.许多人都有同样的问题,但我找不到答案.

我在我的电脑上安装了gcc-4.9.0但Eclipse却找不到它.我使用了默认安装路径:

C:\MinGW
Run Code Online (Sandbox Code Playgroud)

c c++ eclipse mingw toolchain

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

Angular 4中的多个顺序API调用

我有一组图像对象.

console.info('gallery', galleryArray);
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

这个数组的长度可以不同.我必须对此数组的每个项目发出POST请求.只有在上一个请求完成后才能执行下一个请求.

所以我试着像这样制作一个Observable请求数组:

  let requests: Observable<Response>[] = [];
  galleryArray.forEach((image) => {
    requests.push(this._myService.uploadFilesImages(image));
  });

  console.info(requests);
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我的服务如下:

uploadFilesImages(fileToUpload: any): Observable<any> {
  const input = new FormData();
  input.append('image', fileToUpload);
  return this.uploadHttp.post(`${this.endpoint}`, input)
  .map(
    (res: Response) => res.json()
  );
}
Run Code Online (Sandbox Code Playgroud)

问题是如何执行这些请求,以便每个api调用仅在之前完成之后才会执行?请帮忙.我是Angular的新手.

api http-post observable angular

5
推荐指数
1
解决办法
4739
查看次数

三元运算符中的角度平移滤波器

我正在尝试将我的项目翻译成另一种语言.我使用了角度翻译库,并提供了带有翻译的外部JSON文件.它看起来像这样:

{
  "hello_world": "Hola Mundo"
}
Run Code Online (Sandbox Code Playgroud)

当我使用简单的硬编码字符串时它工作得很好,我得到了正确的翻译:

<p>{{ "hello_world" | translate }}</p>
Run Code Online (Sandbox Code Playgroud)

但是如何在这样的代码中处理三元运算符呢?

<button> {{ conditionValue ? 'Show' : 'Hide' }} </button>
Run Code Online (Sandbox Code Playgroud)

如何将这些"显示"和"隐藏"值更改为使用Angular Translate的翻译过滤器?我尝试了不同的方法但是语法错误无效.谢谢!

javascript angularjs angular-translate

5
推荐指数
1
解决办法
3327
查看次数

Maven项目中的Checkstyle.如果违规,不能使项目失败

我遇到了针对java的Checkstyle插件的问题.如果发生任何违规行为,我需要在整个多模块项目中失败.在父pom.xml中,我有以下内容

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.ss.ita</groupId>
  <artifactId>jresume</artifactId>
  <version>1.0</version>
  <packaging>pom</packaging>
  <name>JResume</name>

  <modules>
    <module>common</module>
    <module>persistence</module>
    <module>business</module>
    <module>logging</module>
    <module>web</module>
  </modules>
  <build>

      <plugins>
      <plugin>
       <groupId>org.apache.maven.plugins</groupId>
       <artifactId>maven-checkstyle-plugin</artifactId>
       <version>2.16</version>
       <executions>
         <execution>
           <id>validate</id>
           <phase>validate</phase>
           <configuration>
             <configLocation>dev/checkstyle.xml</configLocation>
             <encoding>UTF-8</encoding>
             <consoleOutput>true</consoleOutput>
             <failsOnError>true</failsOnError>
             <failOnViolation>true</failOnViolation>
           </configuration>
           <goals>
             <goal>check</goal>
           </goals>
         </execution>
        </executions>
       </plugin>
      </plugins>

  </build>
</project>
Run Code Online (Sandbox Code Playgroud)

我的checkstyle.xml放在dev文件夹中.

当我运行我的项目时

mvn clean install
Run Code Online (Sandbox Code Playgroud)

它打印所有违规的列表.但它不能让整个项目失败.它为所有模块打印SUCCESS.我试图使用failsOnErrorfailOnViolation.但它没有用.在插件文档中有以下要求:

  • 需要执行Maven项目.
  • 需要在范围内对工件进行依赖性解析:test.
  • 目标是线程安全的,并支持并行构建.
  • 默认情况下绑定到生命周期阶段:验证.

哪里出错了 也许我以错误的方式编写了我的pom.xml.请帮我解决这个问题.

java eclipse checkstyle maven

4
推荐指数
1
解决办法
917
查看次数

从数组中删除除特定元素之外的元素

我有两个数组。第一个是索引数组,第二个是对象数组。它们看起来像这样:

var nums = [0, 2];
var obj = [Object_1, Object_2, Object_3];
Run Code Online (Sandbox Code Playgroud)

在这种特殊情况下,我需要删除objobj[0]and之外的所有 " " 元素obj[2]。所以结果将如下所示:

obj = [Object_2]
Run Code Online (Sandbox Code Playgroud)

也有可能出现nums = [0, 1, 2]obj = [Object_1, Object_2, Object_3]; 在这种情况下,我不需要删除任何元素。

obj”长度总是大于“nums”长度。

所以我开始只找到我需要保存的元素:

nums.forEach(function(key) {
    obj.forEach(function(o, o_key) {
        if (key === o_key) {
            console.log(key, o);
            // deleting remaining elements
        }
    });
});
Run Code Online (Sandbox Code Playgroud)

问题:如何删除不符合我的条件的元素?我不需要新数组,我想修改现有的“obj”数组。我怎样才能实现这个功能?或者我应该使用其他一些技术?

javascript arrays algorithm array-splice

4
推荐指数
2
解决办法
6914
查看次数

在angular.foreach循环中重置数组值

我有一个像这样的空对象数组:

var a = [ {}, {}, {}, {}, {}, {} ];
Run Code Online (Sandbox Code Playgroud)

以及一系列属性:

var colors = ["red", "green", "blue"];
Run Code Online (Sandbox Code Playgroud)

我需要将"颜色"中的每种颜色分配给带有角度foreach的"a"数组的每个元素.但是"a"数组的长度大于"颜色".我想要"按圈子"分配颜色所以结果必须是这样的:

var a = [
    {color: "red"},
    {color: "green"},
    {color: "blue"},
    {color: "red"},
    {color: "green"},
    {color: "blue"},
    {color: "red"}
];

angular.forEach(a, function(elem, index) {
  if (a.length > colors.length) {
    // .......                       
  }
  elem.color = colors[index];
});
Run Code Online (Sandbox Code Playgroud)

问题:是否有某种方法可以重置foreach的索引,从头开始循环"colors"数组?感谢帮助

javascript arrays foreach angularjs

3
推荐指数
1
解决办法
720
查看次数

Angular*ngFor在不同的div上

我在角4项目中使用了材质flex的标记,看起来像这样.

<div fxLayout="row">
  <div fxFlex="65">

  </div>
  <div fxFlex="35">

  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我有一系列这样的元素:

public array: [object] = [
    {
        firstName: 'value',
        lastName: 'value'
    },
    {
        firstName: 'value',
        lastName: 'value'
    },
    {
        firstName: 'value',
        lastName: 'value'
    },
    {
        firstName: 'value',
        lastName: 'value'
    },
    {
        firstName: 'value',
        lastName: 'value'
    },
];
Run Code Online (Sandbox Code Playgroud)

我想遍历这个数组并填充65%div中所有元素的一半,其余元素填充在35%div中.如何*ngFor正确地使用指令?现在我有这样的解决方案.但它看起来很可怕而且不易阅读.

    <div fxLayout="row">
      <div fxFlex="65">
        <div *ngFor="let item of array; let i = index">
          <div *ngIf="i < 3">
            <p>{{ item.firstName }}</p>
            <p>{{ item.lastName }}</p>
          </div>
        </div>
      </div>
      <div fxFlex="35">
        <div *ngFor="let …
Run Code Online (Sandbox Code Playgroud)

ngfor angular-flex-layout angular

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

字符C++的位表示

这是我的字符位表示程序.但我不知道它是否表明我是对还是错呢?有可疑单位(红色).

在此输入图像描述

你能解释一下这是什么(如果它是对的)或我的代码有什么问题,如果这些单位不应该.谢谢

#include "stdafx.h"
#include "iostream"
using namespace std;

struct byte {
   unsigned int a:1;
   unsigned int b:1;
   unsigned int c:1;
   unsigned int d:1;
   unsigned int e:1;
   unsigned int f:1;
   unsigned int g:1;                   
   unsigned int h:1;
};

union SYMBOL {                              
    char letter;                    
    struct byte bitfields;
};

int main() {                                                              
    union SYMBOL ch; 
    cout << "Enter your char: ";
    while(true) { 

        ch.letter = getchar();
        if(ch.letter == '\n')  break; 

        cout << "You typed: " << ch.letter << endl;
        cout << "Bite form …
Run Code Online (Sandbox Code Playgroud)

c++ bit-manipulation bit

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

Java中的二叉树.System.out.println()的问题

我必须制作一个表达式树.这是它的单个示例模型.但它显示我奇怪的字符,但不是我的字符串.你能帮我解决这个问题吗?还有一个问题:你能告诉我简化代码的方法吗?这段代码怎么样?我可以不用它吗?

public Iterator<TreeNode<T>> iterator() {
    return null;
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

import java.util.*;

public class TreeNode<T> implements Iterable<TreeNode<T>> {
    T data;
    TreeNode<T> parent;
    List<TreeNode<T>> children;

    public TreeNode(T data) {
        this.data = data;
        this.children = new LinkedList<TreeNode<T>>();
    }

    public TreeNode<T> addChild(T child) {
        TreeNode<T> childNode = new TreeNode<T>(child);
        childNode.parent = this;
        this.children.add(childNode);
        return childNode;
    }

    public Iterator<TreeNode<T>> iterator() {
        return null;
    }

    public static void main(String[] args){
        TreeNode<String> root = new TreeNode<String>("root");

        System.out.println("                          " + root + "                         ");
        System.out.println("                         /               \\          ");

        TreeNode<String> …
Run Code Online (Sandbox Code Playgroud)

java algorithm io binary-tree

0
推荐指数
1
解决办法
122
查看次数